using System;
using System.Collections.Generic;
using System.Text;
using AgilePlannerDT.Data;
using AgilePlannerDT.Application;

namespace AgilePlannerDT.Data
{
    public interface IndexCardWithChild : IndexCard
    {
        /// <summary>
        /// Adds a story card to the list.
        /// </summary>
        /// <param name="storycard">The storycard.</param>
        void AddStoryCard(StoryCard storycard);
        Project Project
        {
            get;
            set;
        }
        /// <summary>
        /// Removes a story card from the list.
        /// </summary>
        /// <param name="storycard">The storycard.</param>
        void RemoveStoryCard(StoryCard storycard);

        /// <summary>
        /// Gets or sets the list of story card children.
        /// </summary>
        /// <value>The story card children.</value>
        List<StoryCard> StoryCardChildren
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the available effort.
        /// </summary>
        /// <value>The available effort.</value>
        float AvailableEffort
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the end date.
        /// </summary>
        /// <value>The end date.</value>
        DateTime EndDate
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the start date.
        /// </summary>
        /// <value>The start date.</value>
        DateTime StartDate
        {
            get;
            set;
        }
    }
}